package com.juzi.demo;

import java.util.Scanner;

public class 算机票 {
    public static void main(String[] args) {
        //需求:
        //机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。
        //机票最终优惠价格的计算方案如下：旺季（5-10月）头等舱9折，经济舱8.5折，
        //                         淡季（11月到来年4月）头等舱7折，经济舱6.5折。

        //改的时候，麻烦改成月份或者仓位不对时候，能继续重新输入



        //1、用户输入机票原价，月份，仓位类型
        Scanner sc = new Scanner(System.in);
        System.out.println("请您输入机票原价:");
        double money = sc.nextDouble();

        System.out.println("请你输入月份:");
        int month = sc.nextInt();

        System.out.println("请您输入仓位类型");
        String type = sc.next();

        //调用方法，统计结果
        System.out.println("机票优惠的价格是" + cacl(money, month, type));
    }

    /**
        2、定义方法接收信息，统计优惠后的价格返回
     */
    public static double cacl(double money,int month,String type){
        //3、判断用户选择的信息情况
        if (month >= 5 && month <= 10){
            //旺季
            switch (type){
                case "头等舱":
                    money *= 0.9;
                    break;
                case "经济舱":
                    money *= 0.85;
                    break;
                default:
                    System.out.println("您输入的仓位类型错误请重新输入");
                    money = -1;//表示不能计算价格
            }
        }else if (month == 11 || month == 12 || month >= 1 && month <= 4){
            //淡季
            switch (type){
                case "头等舱":
                    money *= 0.7;
                    break;
                case "经济舱":
                    money *= 0.65;
                    break;
                default:
                    System.out.println("您输入的仓位类型错误请重新输入");
                    money = -1;//表示不能计算价格
            }
        }else {
            System.out.println("对不起，您输入的月份错误，请重新输入");
            money = -1;//表示当前无法计算价格
        }
        return money;//最终价格
    }
}
//遇到判断值匹配的时选择什么结构实现？
//  使用switch分支结构实现。
//遇到判断区间范围的时候选择什么结构实现？
//  使用if分支结构实现。

